home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 September / 09_02.iso / software / mp3ext / MP3ext33b19.exe / {app} / ReadmeV30.txt < prev    next >
Encoding:
Text File  |  2000-10-29  |  9.3 KB  |  205 lines

  1. I assume that you read this file first before installing.
  2.  
  3. My new email-address is: michael@mutschler.de
  4.  
  5.  
  6. ID3V2-notes:
  7. 1. only a few tags are yet implemented
  8. 2. unsynchronization not supported yet, and probably will never be.
  9. 3. The short form of the TCON-Frame is not supported, neither is the writing
  10.    of the char "(".
  11. 4. Actions are untested. Assume they aren't working.
  12. 5. The follwowing frames are fully implemented:
  13.    TIT2, TIT3, TPE1, TPE2, TPE3, TCOM, (TCON), TALB, TRCK, TYER, APIC, TSIZ, USLT
  14.    The rest is just taken as it is. So no unknown frame will be deleted.
  15. 6. For padding, every new ID3v2 tag will get an additional 512 bytes.
  16. 7. I am writing an ID3v2.3 & ID3v1 tag by default.
  17.  
  18. What has changed since Version 2.3b6?
  19. - ID3V2.3 support
  20. - no string limitations anymore
  21. - new Analyzer
  22. - config of the actions has changed
  23. - icon handler
  24.  
  25. New Themes: just create a file in the Themes directory woth the extension .mp3theme.
  26. The format of a theme-file is quite easy, just take the norman.mp3theme as an example.
  27.  
  28.  
  29. ************* begin V3.3 changes **********************************
  30. The version change happens, becaus bws, just sent me some bugfixes,
  31. and I didn't wanted to get confused with his private versioning.
  32.  
  33. New since Version 3.3.17: Default values:
  34. It is now possible to set default values for the various (string) frames,
  35. after a scan is performed. Therefore, if the fields to set are not empty
  36. they will get a default value. There is no GUI for this feature, and you
  37. have to configure this in the registry on your own:
  38. Start Regedit and browse to the key
  39. HKEY_CURRENT_USER\Software\MM\MP3ext\Templates
  40. Then add a Stringvalue named "DefaultFrames". It consists of a comma
  41. seperated list of the 4-char ID3v2 Tag identifiers, which you want to
  42. set values for. e.g. to set the comment and the encoder you would add
  43. set the value to "COMM,TENC". The order is irrelevant.
  44. The next step is to set the value. Therefore add a value for each Tag
  45. with the name "default<TAGNAME>", and its content is the actual string
  46. that will be set. e.g. "defaultCOMM" with a content of
  47. "default Comment from the registry". Do the same for the TENC-tag.
  48. Now your finished with the configuration. Now the Encoder and Comment
  49. fields will be set after the filename has been scanned.
  50. ************* end V3.3 changes **********************************
  51.  
  52. ************* begin V3.2 changes **********************************
  53. There are several new things in version 3.2:
  54.  
  55. 1. full unicode support
  56. I actually changed the internal code, and it now completely in unicode.
  57. The only drawback of this is, it doesn't work on Win95/Win98 anymore, since
  58. the used wide-calls of the GUI are only stubs under Win98....
  59. So there are now two versions, of the DLL: an ANSI-version, and an UNICODE
  60. version. You see which one you have in the info field on the main property
  61. page.
  62. The difference of the two version is, that you cannot enter any unicode
  63. in the ansi version. Although reading of unicode-fields of the ID3v2-Tag
  64. is possible in the ansi version too.
  65.  
  66. 2. Image-support.
  67. Now you can finally add your favourite pictures to MP3s. You can add a picture
  68. for a specific type, when you click on the checkmark. Then you will get
  69. a requesterm where you can select a file to load.
  70. Note: MP3ext does *not* perform any checks of the validity of the file you
  71.       load. The mime-type is taken from the extension of the file. You can,
  72.       e.g. load a text-file, e.g. pic.txt, which would be loaded, and set to
  73.       a mime-type of "image/txt"...
  74.  
  75. Clicking again on the checkmark, will remove the picture from the tag.
  76. The action-buttons (view, save) work on the image seleted with the radio
  77. buttons.
  78.  
  79. A note to the view-button. Since I don't want to compile support for all the
  80. different picture-types, The following procedure is done:
  81. The file ist saved Temporarily to a file with the endling of the mime-type.
  82. e.g. if the mime-type is "image/jpeg" then the created file is mp3extpicture.jpeg.
  83. Then ShellExecute("open") is called on the created file, thus calling your
  84. installed viewer for this filetype.
  85.  
  86. 3. Lyrics support.
  87. Well not much to say about this; this is a field like any other else....
  88. ************* end V3.2 changes **********************************
  89.  
  90.  
  91. The new display since V3.1b4:
  92. I changed the display of the MP3-info a bit, so it always displays the
  93. information of the currently shon MP3. I think there is not much to say
  94. about it. The only new change is: the average time is gone, or does anybody
  95. really need it? Therefore you have a size-field: It displays the filesize of the
  96. currently displayed MP3. Additionally, if there is a TSIZ-frame in the
  97. MP3, then it shows, how many bytes are missing!!!!!
  98.  
  99. TSIZ-support:
  100. When a new ID3v2-Tag is saved, then there is always a TSIZ-frame saved.
  101. This frames stores the length of the MP3-file without the ID3v2 header.
  102. If this frame exists, then the stored one will be used. It is never
  103. changed! Now, what is it for? Some people asked me to add a feature
  104. to recognize incomplete MP3 files. So here you are.
  105. In the new Size-field of the MP3-page, you see when the TSIZ-info doesn't
  106. match the actual size. a negative number means, there is data missing;
  107. a positive value means, there is too much data. Although the latter case
  108. shouldn't happen.
  109. To use this in the Tooltips, I created a new action-element called
  110. $(diffwarn). This tag creates a warning text, if the diffsize is 0.
  111. Additionally there is the new keyword $(diffsize), which is the
  112. difference as shown in the Size-field.
  113.  
  114. Note: If you see a Size-Tag in the framelisting, (e.g. the tooltips), then
  115. the size displayed there is not the actual size of the file, but the size
  116. of the MP3-data!
  117.  
  118.  
  119. Few notes to the icon handler:
  120. - The Icon will be stored inside the MP3-file, as a "APIC"-frame, Type 0x02,
  121.   and mime-type "image/ico".
  122. - if the handler doesn't find an icon in the file, some internal icons are shown:
  123.   1. if the bitrate of the MP3 is <96k then a red MP3-icon is displayed
  124.   2. if the bitrate of the MP3 is 96k/112k/128k, a corresponding icon is displayed
  125.   3. if the bitrate of the MP3 is >128k then a blue MP3-icon is displayed
  126.  
  127. >>>>>>>>>>>>>>>>> Icon designer needed <<<<<<<<<<<<<<<<<<<<<
  128. If anybody likes to draw some nice icons, instead of mine 
  129. (I admit, I am no good graphic artist), please feel free to 
  130. send me them (mutschler@aeon-shopping.de). I will add the
  131. nicest ones in the next version. Oh, you can make icons for
  132. other bitrates too.
  133. >>>>>>>>>>>>>>>>> Icon designer needed <<<<<<<<<<<<<<<<<<<<<
  134.  
  135.  
  136. How does the new analyzer work?
  137. Go to the config-page and select the Templates-Tab. There you
  138. can configure the filename-analyzer. Now you can specify your own
  139. templates based on regular expressions. The analyzer tries all the templates
  140. on the filename (incl. path), and if it matches, it applies the substrings
  141. to the according fields in the ID3-Tag, if they are empty.
  142. If more than one template matches, then this procedure is done more than
  143. once. So put the more complex templates at the top, and the general templates
  144. at the bottom of the list.
  145.  
  146. The template:
  147. They are simple regular expressions. If you want to match a specific field,
  148. e.g. the track, then you must put the 3-char id3v2-identifier followed by a ':'
  149. in the first part of a subexpression: (TRCK:[0-9]*). This would be converted
  150. to the subexpression ([0-9]*), and if it matches, the part that matched
  151. will be written to the track. For more information about Regular expressions
  152. see the documentation to the rx.lib I am using, or in more detail check out
  153. various documenation on UNIX-regex, or PERL-documentation.
  154.  
  155. !!!!!!!!!!!!!!!!!! Note: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  156. !!!    In order to be platform-independent with the filename,
  157. !!!    all backslashes are converted to normal slashes.
  158. !!!    i.e. c:\temp\xx.mp3 -> c:/temp/xx.mp3
  159. !!!!!!!!!!!!!!!!!! Note: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  160.  
  161. The following fields are currently recognized:
  162. TIT2: Title
  163. TIT3: Opus
  164. TPE1: Artist
  165. TPE2: Conductor
  166. TPE3: Orchestra
  167. TCOM: Composer
  168. TCON: Genre
  169. TALB: Album
  170. TRCK: Track
  171. TYER: Year
  172. COMM: Comment
  173.  
  174. Now some examples:
  175. 1. Match the filename as the title.
  176. The title is TIT2. Since we need a subexpression,
  177. lets start with a simple "(TIT2:.*)". This wint work, since we must match the
  178. complete filename and path. So extend it to ".*/(TIT2:.*)\.mp3".
  179.  
  180. 2. match the following: "path\artist-title.mp3"
  181. Let us continue on the previous expression, and extend it with the artist:
  182. ".*/(TPE1:.*)-(TIT2:.*)\.mp3"
  183.  
  184. 3. try and match the track:
  185. A track consists of only numbers, so match any number of numbers:
  186. ".*(TRCK:[0-9]*).*mp3"
  187.  
  188. Since a track is handled as a string this would result in numbers of "01".
  189. And to better match the track, limit the length to 2 numbers. First do the second
  190. problem: ".*(TRCK:[0-9][0-9]).*mp3"
  191. In order to remove the leading zero, you have to do 2 templates. the first one
  192. takes care of the zero, and the second matches the other 2-digit numbers:
  193. 1. ".*0(TRCK:[0-9]).*mp3"
  194. 2. ".*(TRCK:[1-9][0-9]).*mp3"
  195. You can put these two in one regex:
  196. ".*(0(TRCK:[0-9])|(TRCK:[1-9][0-9])).*mp3"
  197.  
  198. and if you want to match single numbers too, just make the leading zero of
  199. template 1 optional:
  200. ".*(0?(TRCK:[0-9])|(TRCK:[1-9][0-9])).*mp3"
  201.  
  202. For a description of the regular expressions, see the file rx.info, taken from
  203. the rx-lib I am using.
  204.  
  205.